### An�lise dos Dados - Nota T�cnica


pacman::p_load(tidyverse, rio, janitor, hrbrthemes, patchwork, paletteer,
               ggplot2, directlabels)


### Figura 1

HGPE_lei <- import("HGPE_lei.xlsx")

# primeiro fazendo um pivot longer pq quero fazer barras agrupadas
HGPE_lei_longa <- HGPE_lei |>
  filter(ano %in% c(2014, 2018)) |> #só me interessam os anos antes e depois da lei que alterou o tempo
  pivot_longer(cols = c(tempo_pres, tempo_dep_fed, tempo_sen, tempo_dep_est, tempo_gov),
               names_to = "cargo",
               values_to = "tempo")

HGPE_lei_longa


#esse passo é necessário para ordenar as barras manualmente
HGPE_lei_longa$cargo <- factor(HGPE_lei_longa$cargo, levels = c("tempo_pres",
                                                                "tempo_dep_fed",
                                                                "tempo_gov",
                                                                "tempo_dep_est",
                                                                "tempo_sen"))

HGPE_lei_longa

cargos_no_hgpe <- HGPE_lei_longa |>
  ggplot(mapping = aes(x = ano, y = tempo, fill = cargo)) +
  geom_bar(stat = "identity",
           width = 2.3,
           position = position_dodge(width = 2.5)) +
  scale_fill_manual(labels=c("Presidente",
                             "Deputado federal",
                             "Governador",
                             "Deputado estadual",
                             "Senador"),
                    values = c("#305371",
                               "#007894",
                               "#009FA2",
                               "#35C399",
                               "#96E282")) +
  scale_x_continuous(breaks = c(2014, 2018),
                     labels = c("1998 a 2014", "a partir de 2018")) +
  scale_y_continuous(breaks = seq(0, 50, by = 10),
                     limits = c(0,50)) +
  labs(x = element_blank(),
       y = "tempo em minutos",
       title = "Tempo di�rio de HGPE destinado a cada cargo") +
  theme_ipsum_tw() +
  theme(panel.grid.major.x = element_blank(),
        panel.grid.minor.x = element_blank(),
        #panel.grid.major.y = element_blank(),
        panel.grid.minor.y = element_blank(),
        plot.title = element_text(size=13),
        legend.text = element_text(size = 9),
        legend.title = element_blank(),
        legend.position = "bottom")

cargos_no_hgpe

### Figura 2

bd_doxa_programas <- import("bd_doxa_programas.xlsx")

df <-  bd_doxa_programas

df$soma_candidatos = 1

df <- df %>% group_by(ano)

df <- df %>% summarise(programas = sum(soma_candidatos, na.rm = TRUE))

df <- df %>% ungroup()

# Basic barplot
p<-ggplot(data=df, aes(x=ano, y=programas)) +
  geom_bar(stat="identity")
p


ggplot(data=df, aes(x=ano, y=programas)) +
  geom_bar(stat="identity", fill="#007894")+
  geom_text(aes(label=programas), vjust=-0.3, size=3.5)+
  theme_minimal() + scale_x_continuous(breaks = seq(1998, 2018, by = 4))

### Figura 3

library(openxlsx)

bd_doxa_candidatos <- read.xlsx("bd_doxa_candidatos.xlsx", sheet = "2002_2018")

dg <-  bd_doxa_candidatos

summary(dg$prestacao_contas)

dg$controle = 1

dg <- dg %>% group_by(ano)

dg <- dg %>% summarise(candidatos = sum(prestacao_contas, na.rm = TRUE))

dg <- dg %>% ungroup()

# Basic barplot
q<-ggplot(data=dg, aes(x=ano, y=candidatos)) +
  geom_bar(stat="identity")
q


ggplot(data=dg, aes(x=ano, y=candidatos)) +
  geom_bar(stat="identity", fill="#007894")+
  geom_text(aes(label=candidatos), vjust=-0.3, size=3.5)+
  theme_minimal() + scale_x_continuous(breaks = seq(2002, 2018, by = 4))


### Figura 4


### Qui-Quadrado

library("gplots")
# 1. convert the data as a table

names(bd_doxa_programas)

table(bd_doxa_programas$ano, bd_doxa_programas$GINT5)

table(bd_doxa_programas$ano, bd_doxa_programas$OBJ1)

table(bd_doxa_programas$ano, bd_doxa_programas$OBJ2)

table(bd_doxa_programas$ano, bd_doxa_programas$APE3)

table(bd_doxa_programas$ano, bd_doxa_programas$APE4)

table(bd_doxa_programas$siglapartido, bd_doxa_programas$APE4)



ggplot(bd_doxa_programas) +
  aes(x = ano, fill = APE4) +
  geom_bar()

test <- chisq.test(table(bd_doxa_programas$ano, bd_doxa_programas$APE4))
test

test$expected

library(corrplot)
corrplot(test$residuals, is.cor = FALSE)

corrplot(test$expected, is.cor = FALSE)

library(vcd)

mosaic(~ ano + APE4,
       direction = c("v", "h"),
       data = bd_doxa_programas,
       shade = TRUE
)

table(bd_doxa_programas$OBJ1, bd_doxa_programas$APE4)

mosaic(~ OBJ1 + APE4,
       direction = c("v", "h"),
       data = bd_doxa_programas,
       shade = TRUE
)

### Figura 5

partidos_sel <- bd_doxa_programas |>
  filter(numpartido %in% c("15", "13", "50", "22", "25", "�45", "12", "11"))


test2 <- chisq.test(table(partidos_sel$numpartido, partidos_sel$APE3))
test2

test2$expected

library(corrplot)
corrplot(test2$residuals, is.cor = FALSE)

corrplot(test2$expected, is.cor = FALSE)

library(vcd)

mosaic(~ numpartido + APE3,
       direction = c("v", "h"),
       data = partidos_sel,
       shade = TRUE
)

table(partidos_sel$numpartido, partidos_sel$APE3)



### Figura 6

library(ggpubr)

bd_doxa_candidatos$el <- as.factor(bd_doxa_candidatos$ano)

teste_1 <- bd_doxa_candidatos %>% select(el, ano, HGPE_total, VR_RECEITA_total, 
                                         sg_partido)

teste_2 <- na.omit(teste_1)

sp <- ggscatter(teste_2, x = "HGPE_total", y = "VR_RECEITA_total", 
                color = "el", palette = "jco",
                add = "reg.line", conf.int = TRUE)

sp

sp + stat_cor(aes(color = el))

sp + stat_cor(aes(color = el), label.y = 1, label.x = 1, p.accuracy = 0.001, r.accuracy = 0.0)



gg <- ggplot(bd_doxa_candidatos, aes(x = HGPE_total, y = VR_RECEITA_total, color = as.factor(ano)))

gg + geom_point()

gg + geom_smooth(alpha = 0.3, method = "lm")

####

### Figura 7


library(ggplot2)

names(bd_doxa_candidatos)

teste_3 <- bd_doxa_candidatos %>% select(el, ano, HGPE_total, VR_RECEITA_total, 
                                         resultado, log_soma)

teste_4 <- na.omit(teste_3)

teste_4 <- teste_4 %>% mutate(eleito = recode(resultado, 'eleito' = 'eleito',
                                                        'eleito por media' = 'eleito',
                                                        'eleito por qp' = 'eleito',
                                                        'nao eleito' = 'nao eleito',
                                              'suplente' = 'nao eleito'
                                                                                 
))



ggplot(teste_4, aes(x=eleito, y=HGPE_total, fill=el)) + 
  geom_boxplot()

ggplot(teste_4, aes(x=eleito, y=log(HGPE_total), fill=el)) + 
  geom_boxplot() +
  facet_wrap(~el)

ggplot(teste_4, aes(x=eleito, y=log_soma, fill=el)) + 
  geom_boxplot() +
  facet_wrap(~el)






